From: Giovanni Campagna Date: Thu, 31 Jan 2013 12:33:31 +0000 (+0100) Subject: ScreenShield: fix fallout from 8cb3884 X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~5000 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=9ab22fe5519149515571128448ca0cb27805ccb6;p=gnome-shell.git ScreenShield: fix fallout from 8cb3884 We must remove music notifications before we're destroyed, otherwise they get destroyed with us. Also, integrate a review comment I previously forgot. https://bugzilla.gnome.org/show_bug.cgi?id=685926 --- diff --git a/js/ui/screenShield.js b/js/ui/screenShield.js index 0367f6078..73bf1370a 100644 --- a/js/ui/screenShield.js +++ b/js/ui/screenShield.js @@ -218,9 +218,11 @@ const NotificationsBox = new Lang.Class({ continue; let body = ''; - if (n.bannerBodyText) + if (n.bannerBodyText) { body = n.bannerBodyMarkup ? n.bannerBodyText : GLib.markup_escape_text(n.bannerBodyMarkup, -1); + } + let label = new St.Label({ style_class: 'screen-shield-notification-count-text' }); label.clutter_text.set_markup('' + n.title + ' ' + body); textBox.add(label); @@ -356,6 +358,11 @@ const NotificationsBox = new Lang.Class({ obj.sourceBox.destroy(); obj.sourceBox = obj.titleLabel = obj.countLabel = null; + if (obj.musicNotification) { + this._musicBin.child = null; + obj.musicNotification = null; + } + source.disconnect(obj.sourceDestroyId); source.disconnect(obj.sourceCountChangedId); source.disconnect(obj.sourceTitleChangedId);